$(function () {
    //1.首页数据渲染 
    // 渲染： 取数据 + 模板
    // 1 - ajax去后台获取用户的数据
    // 2 - 通过模板引擎渲染到页面中
    var currentPage = 1; //当前页
    var pageSize = 3; //每页的条数

    function render() {
        $.ajax({
            type: 'get',
            url: '/category/queryTopCategoryPaging',
            data: {
                page: currentPage,
                pageSize: pageSize,
            },
            dataType: 'json',
            success: function (res) {
                // console.log(res);
                $('tbody').html(template('tmp', res))
                setPage(res.total);
            },
        })
    }
    render();

    // 2. 分页
    function setPage(total) {
        $("#paginator").bootstrapPaginator({
            bootstrapMajorVersion: 3,//默认是2，如果是bootstrap3版本，这个参数必填
            currentPage: currentPage,//当前页
            totalPages: Math.ceil(total / pageSize),//总页数
            onPageClicked: function (event, originalEvent, type, page) {
                //为按钮绑定点击事件 page:当前点击的按钮值
                //1.改变当前页的取值;
                currentPage = page;
                //2. 页面重新渲染
                render();
                // console.log(page);
            }
        });
    }


    //添加一级分类
    //( 1)分类表单非空校验
    //使用表单校验插件
    $('.add-form').bootstrapValidator({
        //1. 指定不校验的类型，默认为[':disabled', ':hidden', ':not(:visible)'],可以不设置
        excluded: [':disabled', ':hidden', ':not(:visible)'],

        //2. 指定校验时的图标显示，默认是bootstrap风格
        feedbackIcons: {
            valid: 'glyphicon glyphicon-ok',
            invalid: 'glyphicon glyphicon-remove',
            validating: 'glyphicon glyphicon-refresh'
        },

        //3. 指定校验字段
        fields: {
            //校验用户名，对应name表单的name属性
            categoryName: {
                validators: {
                    //不能为空
                    notEmpty: {
                        message: '请输入一级分类名词'
                    },
                }
            },
        }

    });

    // (2)
    // 1- 点击添加按钮，在表单数据校验通过的情况下，获取数据，发送给后台进行添加
    // 2- 后台添加完成后，前端重新渲染页面，隐藏模态框 ， 重置表单 ....

    $('.add-form').on('success.form.bv', function (e) {
        e.preventDefault(); //阻止表单默认行为
        $.ajax({
            type: 'post',
            url: '/category/addTopCategory',
            data: $('.add-form').serialize(),
            dataType: 'json',
            success: function (res) {
                // console.log(res);
                //页面重新渲染
                render();

                //隐藏模态框
                $('.modal-add').modal('hide');

                // 表单重置
                // $('.add-form')[0].reset();
                $('.add-form').data('bootstrapValidator').resetForm(true);
                //    $('.add-form').data('bootstrapValidator').resetForm(true); //重置表单校验样式 和 数据


            }
        })

    })


})